Skip to content

chore: upgrade target frameworks from net8/net9 to net9/net10#175

Merged
tylerkron merged 1 commit intomainfrom
claude/charming-buck-17a1e6
Apr 25, 2026
Merged

chore: upgrade target frameworks from net8/net9 to net9/net10#175
tylerkron merged 1 commit intomainfrom
claude/charming-buck-17a1e6

Conversation

@tylerkron
Copy link
Copy Markdown
Contributor

Summary

  • Drops .NET 8 support, adds .NET 10 support to always track the latest two stable releases
  • Updates TargetFrameworks in both Daqifi.Core.csproj and Daqifi.Core.Tests.csproj from net8.0;net9.0 to net9.0;net10.0
  • Updates dotnet-version in both ci.yml and release.yml from 8.0.x / 9.0.x to 9.0.x / 10.0.x

Test plan

  • CI build passes for both net9.0 and net10.0 targets
  • Tests pass on both frameworks

🤖 Generated with Claude Code

Drops .NET 8 support and adds .NET 10 to always support the latest two
stable LTS/STS releases.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@tylerkron tylerkron requested a review from a team as a code owner April 25, 2026 20:04
@qodo-code-review
Copy link
Copy Markdown

Review Summary by Qodo

Upgrade target frameworks from .NET 8/9 to 9/10

✨ Enhancement

Grey Divider

Walkthroughs

Description
• Drops .NET 8 support, adds .NET 10 support
• Updates target frameworks to net9.0 and net10.0
• Updates CI/CD workflows to use .NET 9.0.x and 10.0.x
Diagram
flowchart LR
  A["Current: .NET 8.0 & 9.0"] -- "Remove .NET 8.0" --> B["Add .NET 10.0"]
  B --> C["Target: .NET 9.0 & 10.0"]
  D["CI/CD Workflows"] -- "Update dotnet-version" --> E["9.0.x & 10.0.x"]
Loading

Grey Divider

File Changes

1. src/Daqifi.Core/Daqifi.Core.csproj ⚙️ Configuration changes +1/-1

Update target frameworks to .NET 9 and 10

• Updated TargetFrameworks from net8.0;net9.0 to net9.0;net10.0
• Removes .NET 8.0 support and adds .NET 10.0 support

src/Daqifi.Core/Daqifi.Core.csproj


2. src/Daqifi.Core.Tests/Daqifi.Core.Tests.csproj ⚙️ Configuration changes +1/-1

Update test project target frameworks

• Updated TargetFrameworks from net8.0;net9.0 to net9.0;net10.0
• Aligns test project with main project framework targets

src/Daqifi.Core.Tests/Daqifi.Core.Tests.csproj


3. .github/workflows/ci.yml ⚙️ Configuration changes +1/-1

Update CI workflow .NET versions

• Updated dotnet-version from 8.0.x and 9.0.x to 9.0.x and 10.0.x
• Ensures CI pipeline builds against supported .NET versions

.github/workflows/ci.yml


View more (1)
4. .github/workflows/release.yml ⚙️ Configuration changes +1/-1

Update release workflow .NET versions

• Updated dotnet-version from 8.0.x and 9.0.x to 9.0.x and 10.0.x
• Ensures release pipeline uses supported .NET versions

.github/workflows/release.yml


Grey Divider

Qodo Logo

@qodo-code-review
Copy link
Copy Markdown

qodo-code-review Bot commented Apr 25, 2026

Code Review by Qodo

🐞 Bugs (1) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider


Remediation recommended

1. Release SDKs not validated 🐞 Bug ☼ Reliability
Description
The release workflow installs both 9.0.x and 10.0.x SDKs but performs restore/build/test/pack only
once, so the release pipeline doesn’t validate that the release process works under both SDK
toolchains. This reduces confidence that you’re truly supporting the “latest two SDKs”
operationally.
Code

.github/workflows/release.yml[R19-24]

      uses: actions/setup-dotnet@v5
      with:
        dotnet-version: |
-          8.0.x
          9.0.x
+          10.0.x
    
Evidence
The workflow installs multiple SDKs but runs a single sequence of dotnet commands
(restore/build/test/pack) without a matrix/loop, so only one SDK toolchain actually executes the
release validation steps.

.github/workflows/release.yml[18-46]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

### Issue description
The release workflow installs both 9.0.x and 10.0.x SDKs but runs the release build/test/pack steps only once, so only one SDK toolchain is actually validated.

### Issue Context
`dotnet-version` is multi-line, but there’s no matrix and no per-version execution of the build/test steps.

### Fix Focus Areas
- .github/workflows/release.yml[18-46]

### Suggested change
Option A (recommended): add a matrix and run build/test for each SDK, but only pack/push once (e.g., gate pack/push on matrix dotnet == '10.0.x').

Option B: if you intentionally only want the latest SDK, install only 10.0.x to avoid implying dual-SDK validation.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

Qodo Logo

@tylerkron
Copy link
Copy Markdown
Contributor Author

Re: Qodo issue — Release SDKs not validated: Disagree — no change needed.

When a project multi-targets net9.0;net10.0, a single dotnet build / dotnet test invocation with the .NET 10 SDK builds and tests both TFMs in one pass. A matrix is not needed.

The reason both 9.0.x and 10.0.x are listed in setup-dotnet is that dotnet test needs the .NET 9 runtime present to execute the net9.0 test binaries — the .NET 10 SDK ships with the .NET 10 runtime only. Installing 9.0.x makes the .NET 9 runtime available so tests for both TFMs actually run.

Switching to only 10.0.x (Qodo's Option B) would silently skip the net9.0 test run, which is worse. No change needed.

@tylerkron tylerkron merged commit a4e63f0 into main Apr 25, 2026
1 check passed
@tylerkron tylerkron deleted the claude/charming-buck-17a1e6 branch April 25, 2026 20:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant